Reference to installation made in the following is also intended to include reconfiguration, updating and de-installation of program products and other types of information, such as documents.
When installing software in data communication systems, the same installation process has traditionally been repeated manually and individually for each unit in the data communication system that is intended to include the software. This means that the information required for the installation, which is normally obtained by questions asked of the user, must be repeated time and time again, which is highly time-consuming and liable to cause errors. Furthermore, this procedure often results in non-identical execution of the installations--an inhomogeneous system is obtained, which may later lead to problems, for instance when re-configuring, updating or de-installing software. This applies particularly to the installation of software in data communication systems which include a large number of similar units in which it is desired to install program software in a unitary fashion.
The trend followed by the development of such systems is one in which at least a part of the processing capacity of a central computer unit has been transferred to a number of local computer units. For example, in present-day techniques, a central computer unit coupled to a number of terminals can be replaced with one or more local networks which include a plurality of personal computers and/or working stations. Previously, an administrator needed only to worry about the setting-up of software in the central computer unit. Since many units in the system are able to store and execute software individually and, in addition, also often have access to logic units in a service unit belonging to that particular local network, the administrator is nowadays presented with the technical problem of remembering which software was installed in which unit, which units need updating, etc. These problems become many times more difficult when so-called remote communication networks are used, where a large number of units are used and these units are spread over a wide geographical area, and may also be of many different kinds.
Neither is it possible to place a fully competent person at each local level, much less a competent person who has effective control over the system as a whole, so as to enable changes to be made, new versions of old programs to be installed, etc.
Another troublesome, technical problem is that of maintaining user units updated throughout the whole of the distributed computer system, both locally and globally, with the same version of data installed in a similar fashion in the various user units and for the various users. This has many times resulted in not-easily traced, "unexplainable" errors.
For example, it is relatively usual for program producers to introduce changes into commercial software and these changes to accompany the installation program without having been mentioned. When newly-purchased program software of this nature is installed with its installation program in an individual user unit, it is extremely difficult to determine or to trace which changes have been inserted. This can result in "unexplainable" errors occurring in the system.
Thus, the technical problem which is in need of solution is one of enabling data, such as software or some other type of information, for instance certain list files, i.e. documents, to be installed readily and in a unitary fashion in user units that are coupled to a data or communication system.
Another technical problem is one of enabling a data system administrator to keep a record of what is found installed in the system and where.
A network-connected data communication system is described in U.S. Pat. No. 4,974,149. A data descriptor file describes the software to be distributed to the remote systems from a central system. The information in this descriptor file is then employed by the remote systems to retrieve the software from an inventory library specified in the data description file. Thus, the remote systems get a description of software intended to be delivered to them and where to find this software. Two kinds of techniques to distribute data are described, one of them is to distribute data to components systems across a network, the other to distribute data by means of media, such as punched tape or cards, magnetic tape, or magnetic disks. The describing file indicates also if the software shall be automatically installed in a run library or if it should be installed by media for later manual installation.